/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package universityModel;

import universityModel.curriculum.*;
import universityModel.organization.*;
import universityModel.lesson.*;
import universityModel.person.*;

/**
 *
 * @author
 */
public class TestDrive {
	public static void main(String[] args) { 
		EstablInfo establInfo = new EstablInfo("FMP", "Ukraine", 1990, "Programming");
    
		Faculty fpm = new Faculty(establInfo, "FMP");
      
		fpm.addGroup("KV-81", 4);
		fpm.addGroup("KV-82", 4);
		fpm.addGroup("KV-83", 4);
		fpm.addGroup("KV-84", 4);
		
		Student iAm = new Student(new Name("Dmytro", "Parkhomenko"),
					  new BiographicalData("24.09.1991", "Ukraine, Krolevetz city", 12345), 
                                          new StudentInfo("Computer networks", "KV-81", 107), 
					  new StudyPlace("KPI", "FMP"));
		fpm.enrollStudent(iAm);
		
		//fpm.showAllStudents();
		
		Student myFriend1 = new Student(new Name("Olexiy", "Rovtyn"),
                                                new BiographicalData("09.02.1992", "Ukraine, Kremenchyk city", 12346), 
                                                new StudentInfo("Computer networks", "KV-81", 117), 
                                                new StudyPlace("KPI", "FMP"));
		fpm.enrollStudent(myFriend1);
		
                //fpm.showAllStudents();
                
                
		Student myFriend2 = new Student(new Name("Dmytro", "Paziy"),
                                                new BiographicalData("05.03.1991", "Ukraine, Kruvoy Rog city", 12347), 
                                                new StudentInfo("System programing", "KV-82", 112), 
                                                new StudyPlace("KPI", "FMP"));
		fpm.enrollStudent(myFriend2);
                 
                //fpm.showAllStudents();
		
		Teacher matanTeacher = new Teacher(new Name("Yra", "Boxonov"), 
                                                   new BiographicalData("NA", "Ukraine Kyiv", 6666), 
                                                   "Matanaliz", 
                                                   "dozent");
		fpm.addTeacher(matanTeacher);
		
                //fpm.showAllTeachers();
                
                
		Teacher webTeacher = new Teacher(new Name("Andrey", "Petrashenko"), 
                                                 new BiographicalData("NA", "Ukraine Kyiv", 6667), 
                                                 "WEB programing", 
				   		 "dozent");
		fpm.addTeacher(webTeacher);
		
		Teacher AlgorithmTeacher = new Teacher(new Name("Olexandr", "Marchenko"), 
                                                       new BiographicalData("NA", "Ukraine Kyiv", 6668), 
                                                       "SDA", 
                                                       "dozent");
		fpm.addTeacher(AlgorithmTeacher);
		
		Teacher networkTeacher = new Teacher(new Name("Maria", "Orlova"), 
                                                     new BiographicalData("NA", "Ukraine Kyiv", 6669), 
                                                     "Computer networks and systems", 
                                                     "professor");
		fpm.addTeacher(networkTeacher);
                
                //fpm.showAllTeachers();
                
		Lecture networks = new Lecture(new Name("Maria", "Orlova"), 
                                               new Time("Domashka", 1), 
                                               new Venue(15, 97), 
                                               "Computer networks and systems", 
						WeekDays.MONDAY);
                networks.add("KV-81");
		
		fpm.addLesson(networks);
		
		Lecture web = new Lecture(new Name("Andrey", "Petrashenko"), 
				   				  new Time("Domashka", 4), 
				   				  new Venue(18, 301), 
				   				  "WEB programing", 
				   				  WeekDays.THURSDAY);
                web.add("KV-81");

		fpm.addLesson(web);
		
		Exam examOrlova = new Exam(new Name("Maria", "Orlova"), 
				   			 new Time("Botanstvo", 1), 
				   			 new Venue(15, 97), 
				   			 "Computer networks and systems", 
				   			 WeekDays.THURSDAY);
		
		examOrlova.setGroup("KV-81");
                
                fpm.addExam(examOrlova);
                
                
               //fpm.showCurriculum("KV-81");
                
                /*
                fpm.showExams("KV-81");
		fpm.showAllStudents();
		fpm.showAllTeachers();
                
                 * 
                 */
                
                /*
                Curriculum curriculum = new Curriculum("KV-81");
                
                curriculum.addLesson(web);
                curriculum.addLesson(networks);
                
                 * 
                 */
               
                 
 	}
}
